'''
类方法
    属于【类对象】的方法。
    通过装饰器@classmethod来定义
    @classmethod
    def function_name(cls [,形参列表]):
        方法体
    要点
        @classmethod必须位于方法上一行
        第一个cls必须有；cls指的就是【类对象】本身
        调用类方法格式：类名.类方法名(参数列表)。参数列表中，不需要也不能给cls传值
        类方法中访问实例属性呵呵实例方法会导致报错
        子类继承父类方法时，传入cls是子类对象，而非父类对象（学完继承再说）
静态方法
    python对象中允许定义与【类对象】无关的方法，称为【静态方法】
    【静态方法】和在模块中定义普通函数没有区别，只不过【静态方法】放到了【类的名字空间里面】，需要通过【类】调用
    静态方法通过装饰器@staticmethod来定义，格式如下
    @staticmethod
    def function_name([形参列表])
        方法体
    要点：
        @staticmethod必须位于方法上面一行
        调用静态方法格式：类名.静态方法名(参数列表)
        静态方法中访问实例属性和实例方法会导致报错

'''


class Student:
    company = '软通'

    @classmethod
    def print_company(cls):
        print(cls.company)


Student.print_company()
